
var map;
var marker;

var oTablaClientes;

$(document).ready(function() {
    oTablaClientes = $('#tablaClientes').dataTable( {
        "sScrollY": "300px",
        "oLanguage": {
                "oPaginate": {
                    "sFirst": "Primera",
                    "sLast": "&Uacuteltima",
                    "sNext": "Siguiente",
                    "sPrevious": "Anterior"
                },
             "sEmptyTable": "No hay datos disponibles.",
             "sInfo": "Se muestran _START_ a _END_ de _TOTAL_ clientes.",
             "sInfoEmpty": "Se muestran 0 a 0 de 0 clientes.",
             "sInfoFiltered": "(Filtrados de _MAX_ total de clientes)",
             "sLengthMenu": "Se muestran _MENU_ clientes",
             "sLoadingRecords": "Cargando informaci&oacute;n...",
             "sProcessing": "Procesando...",
             "sSearch": "Buscar:",
             "sZeroRecords": "No se encuentran coincidencias"
            }
      } );
});

function initialize() {
  	var mapOptions = {
            zoom: 10,
            center: new google.maps.LatLng(19.240312,-103.726088),//colima,colima
            mapTypeId: google.maps.MapTypeId.ROADMAP
  	};
  	map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions);
  	marker = new google.maps.Marker({
            position: map.getCenter(),
            map: map
        });
}
 
function initMap(lat,lon){
        setTimeout(function(){
            initialize();
            google.maps.event.trigger(map, 'resize');
            google.maps.event.trigger(map, 'bounds_changed');
            map.setZoom(10);
            if(lat && lon){
                    map.setCenter(new google.maps.LatLng(lat,lon));
                    marker.setPosition(new google.maps.LatLng(lat,lon));
                    }
            else{marker.setPosition(map.getCenter());}

            google.maps.event.addListener(map, 'click', function( event ){
            marker.setPosition(new google.maps.LatLng(event.latLng.lat(),event.latLng.lng()));
            document.getElementById("latitude").value = event.latLng.lat();
            document.getElementById("longitude").value = event.latLng.lng();
            });
        }, 600);
 }
 
 function agregarCliente(){
     var valores = $("#modalClientesForm").serializeObject();
    $.ajax({
        type:"POST",
        url:"clientes/agregar",
        dataType:"html",
        data:valores,
        beforeSend:function(){
        },
        success:function(data){
            var result = JSON.parse(data);
            if (result.rows > 0)
               { 
                  showNotify('Agregar Cliente','El cliente se agregó correctamente.','correcto');
                  setTimeout(function(){
                      $('#modalClientes').modal('hide');
                      location.reload();
                     
                  },3000); 
                  }
                else
                  showNotify('Agregar Cliente','Ocurrio un error al agregar el cliente.','error');
        }
    })
 }

 function modificarCliente(){
     var valores = $("#modalClientesForm").serializeObject();
    $.ajax({
        type:"POST",
        url:"clientes/modificar",
        dataType:"html",
        data:valores,
        beforeSend:function(){
        },
        success:function(data){
            var result = JSON.parse(data);
            if (result.rows > 0)
               { 
                  showNotify('Modificar Cliente','El cliente se modificó correctamente.','correcto');
                  setTimeout(function(){
                      $('#modalClientes').modal('hide');
                       
                      location.reload();
                  },3000); 
                  }
                else
                  showNotify('Modificar Cliente','Ocurrio un error al modificar el cliente.','error');
        }
    })
 }
 
 function fillModal(ide){
        
        var arrMod = [];
 	if(ide){arrMod.push(ide);}
 	else{
           var selectos = document.getElementById('tablaClientes').getElementsByTagName('input');
           for(var i=0; i<selectos.length; i++){
                   if(selectos[i].checked)
                       arrMod.push(selectos[i].id);
           }
        }
 	if(arrMod.length > 0){
 		if(arrMod.length > 1){alert("Modificar Cliente","Solo se puede modificar un cliente a la vez!");}
 		else{
 			$.getJSON('clientes/req_cliente',{id: arrMod[0]}, function(resp){ 			 				 				
 				document.getElementById("nombre").value = resp[0];
 				document.getElementById("nombre").disabled = true;
 				document.getElementById("rfc").value = resp[1];
 				document.getElementById("rfc").disabled = true; 				
 				document.getElementById("contacto").value = resp[2];
 				document.getElementById("domicilio").value = resp[3];
 				document.getElementById("telefono").value = resp[4];
 				document.getElementById("email").value = resp[5];
 				document.getElementById("cmbEstados").value = resp[6];
 				setTimeout(function(){cargarEstados(resp[7])},100);//CARGAR ESTADOS, SELECCIONAR CIUDAD 7	 						
 				document.getElementById("latitude").value = resp[8];
 				document.getElementById("longitude").value = resp[9];
                                document.getElementById("carpeta").value = resp[10];
                                document.getElementById("carpeta").disabled = true;
				initMap(resp[8],resp[9]);			   //RECARGAR MAPA, SET LAT LONG
				
 				document.getElementById('modalClientesForm').action = "javascript:modificarCliente();";
 				document.getElementById('hiddenid').value = arrMod[0];
 				$('#botonModal').text("Modificar");
 				$('#modalClientes').modal('show');
 			})
 			.fail(function(){
                            showNotify("Error","Error en consulta AJAX cliente",'error');});
 		}
 	}
 	else{showNotify("Modificar Cliente","Debe seleccionar un cliente a modificar",'alerta');}
 }
 
 function eliminarCliente(ide){
         var arrEliminar = [];
  	 if(ide){arrEliminar.push(ide);}
  	 else{
 	 var selectos = document.getElementById('tablaClientes').getElementsByTagName('input');               
               for(var i=0; i<selectos.length; i++)
                   {
                       if(selectos[i].checked)
                           arrEliminar.push(selectos[i].id);                        
                   }
    }
 	if(arrEliminar.length > 0){

 	 confirm("Eliminar Clientes?", "Esta accion eliminara los clientes seleccionados", function(r){
 	 	if(r){
    		 var myJsonString = JSON.stringify(arrEliminar);
                 $.ajax({
                    type:"GET",
                    url:"clientes/baja_clientes",
                    dataType:"html",
                    data:{id: myJsonString},
                    beforeSend:function(){
                    },
                    success:function(data){
                        var result = JSON.parse(data);
                        if (result.rows)
                           { 
                                showNotify('Eliminar Cliente','El cliente se eliminó correctamente.','correcto');
                                setTimeout(function(){
                                    location.reload();
                                },3000); 
                            }
                            else
                                showNotify('Eliminar Cliente','Ocurrio un error al eliminar al cliente.','error');
                    }
                })
                
    	 }
 	 });
 	
     }
     else
         {
             showNotify("Eliminar Clientes","Debe seleccionar al menos un cliente.",'alerta');
         }
   }
   
   
function codigoQR(){

    var v= $('.clientes:checked');    
    if(v.length==0){
        
       alert("Seleccionar  un campo");
        
    }       
    else if (v.length==1){
        
        location.href='clientes/generarcodigoQR/' + v[0].value;
    }       
    else{        
        alert("Operación no valida para seleccion multiple");
    }   
     
     
}   
 
 
 
